package com.ls.userlog.annocation;

import java.lang.annotation.*;

/**
 * 自定义注解RiseLog
 * @Documented: 可以生成doc文档
 * @Retention:  这个注解的作用就是定义 自定义注解@RiseLog的生命周期有多长，定义在RetentionPolicy中,
 * RetentionPolicy中有SOURCE, CLASS, RUNTIME
 * SOURCE 的意思就是说被作用在源代码上，CLASS 就是被作用在编译出来的源码上，RUNTIME 就是只作用在运行时
 *
 * @Target 定义 该自定义注解被用在哪些作用域中
 * 作用域	含义
 * TYPE	用于描述类、接口（包括注解类型）或enum声明
 * FIELD	用于描述域
 * METHOD	用于方法
 * PARAMETER	用于描述参数
 * CONSTRUCTOR	用于描述构造器
 * LOCAL_VARIABLE	用于描述局部变量
 * ANNOTATION_TYPE	用于描述注解
 * PACKAGE	用于描述包
 * TYPE_PARAMETER	表示该注解能使用在自定义类型参数
 * TYPE_USE	是对类型的注解
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.TYPE})
public @interface RiseLog {
    //具体操作内容， 默认为 查看
    String operateName() default "查看";
}
